package com.jtny.nytb.equipment.vo.excel;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.NumberFormat;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @author 智慧能源中心 - 伍天宇
 * @package com.jtny.nytb.energymonitor.equipment.vo.dataparam
 * @fileName DataParamExcelVO.java
 * @createTime 2023年10月10日 10:51
 * @Copyright© 2023 jtny
 * 江投能源技术研究院 版权所有
 */
@Data
@ExcelIgnoreUnannotated
@ApiModel("设备数据参量ExcelVO对象")
public class ExcelDataParamVO {

    /**
     * 设备模型名称/设备名称
     */
    @ExcelProperty(value = "设备模型名称/设备名称")
    @ColumnWidth(30)
    @ApiModelProperty(value = "设备模型名称/设备名称", required = true)
    private String relationName;

    /**
     * 参量名称
     */
    @ExcelProperty(value = "参量名称")
    @ColumnWidth(30)
    @ApiModelProperty("参量名称")
    private String name;

    /**
     * 参量别名
     */
    @ExcelProperty(value = "参量别名")
    @ColumnWidth(30)
    @ApiModelProperty("参量别名")
    private String alias;

    /**
     * 数据上报标识
     */
    @ExcelProperty(value = "数据上报标识")
    @ColumnWidth(30)
    @ApiModelProperty(value = "数据上报标识", required = true)
    private String reportIdentifier;

    /**
     * 统一参量标识
     */
    @ExcelProperty(value = "统一参量标识")
    @ColumnWidth(30)
    @ApiModelProperty(value = "统一参量标识", required = true)
    private String unifiedIdentifier;

    /**
     * 统一参量标识名称
     */
    @ExcelProperty(value = "统一参量标识名称")
    @ColumnWidth(30)
    @ApiModelProperty(value = "统一参量标识名称", required = true)
    private String unifiedIdentifierName;

    /**
     * 参量来源(1设备自动采集 2系统计算 3常量 4手动填报)
     */
    @ExcelProperty(value = "参量来源(设备自动采集、系统计算、常量、手动填报)")
    @ColumnWidth(30)
    @ApiModelProperty(value = "参量来源(1设备自动采集 2系统计算 3常量 4手动填报)", required = true)
    private String sourceStr;

    /**
     * 计量单位名字
     */
    @ExcelProperty(value = "计量单位")
    @ColumnWidth(30)
    @ApiModelProperty(value = "计量单位", required = true)
    private String measurementUnit;

    /**
     * 小数点位
     */
    @ExcelProperty(value = "小数点位（数字）")
    @NumberFormat
    @ColumnWidth(10)
    @ApiModelProperty(value = "小数点位", required = true)
    private Integer digit;


    /**
     * 实时量/累计量(1:实时量;2:累计量)
     */
    @ExcelProperty(value = "实时量/累计量(实时量、累计量)")
    @ColumnWidth(30)
    @ApiModelProperty(value = "实时量/累计量(0:实时量;1:累计量)", required = true)
    private String dataTypeStr;

    /**
     * 默认图表
     */
    @ExcelProperty(value = "默认图表(流向图、柱状图、折线图、饼图)")
    @ColumnWidth(30)
    @ApiModelProperty(value = "默认图表: '1': '流向图 ,'2': '柱状图','3': '折线图','4': '饼图'", required = true)
    private String chartStr;

    /**
     * 是否配电监测展示
     */
    @ExcelProperty(value = "是否配电监测展示(是、否)")
    @ColumnWidth(10)
    @ApiModelProperty(value = "是否配电监测展示(0:否;1:是)", required = true)
    private String powerCheckDisplayStr;

    /**
     * 描述
     */
    @ExcelProperty(value = "描述")
    @ColumnWidth(100)
    @ApiModelProperty("描述")
    private String paramDescribe;

}
